import pandas as pd
import tools_pmc
from sqlalchemy import create_engine
import sqlite3

import shutil

# 每日留存数据库文件
source_path = "//192.168.70.101/19计划管理部/01.计划/1，数据处理工具/file/config/IK-PMC-MC.db"
target_path = "//192.168.70.101/19计划管理部/01.计划/1，数据处理工具/file/" + tools_pmc.today_str1 + "/source_file_Ⅱ"
shutil.copy(source_path, target_path)

# 物料信息表导入SQLite数据库
df = pd.read_excel(tools_pmc.lj_wlxxb, engine='openpyxl', header=1)  # 或 'xlrd' 对于.xls文件
df = df.drop(df.index[:0]).reset_index(drop=True)
# 创建SQLite数据库引擎
engine = create_engine(r"sqlite:///\\192.168.70.101\19计划管理部\01.计划\1，数据处理工具\file\config\IK-PMC-MC.db")
# 将DataFrame导入SQLite数据库的表中
df.to_sql("物料信息表", con=engine, if_exists="replace", index=False)

# 连接到SQLite数据库
conn = sqlite3.connect(r"\\192.168.70.101\19计划管理部\01.计划\1，数据处理工具\file\config\IK-PMC-MC.db")
cursor = conn.cursor()
# 从数据库中读取两个表的第一列数据
df1 = pd.read_sql("SELECT 品号 FROM 物料信息表", conn)
df2 = pd.read_sql("SELECT 品号 FROM 物控信息1", conn)
# 找出df1中有但df2中没有的物料编号
df1_diff = df1[~df1['品号'].isin(df2['品号'])]
# 将df1_diff中的物料编号插入到物控信息1中
for index, row in df1_diff.iterrows():
    insert_stmt = f"INSERT INTO 物控信息1 (品号) VALUES ({int(row['品号'])})"
    cursor.execute(insert_stmt)
# 提交事务并关闭连接
conn.commit()
conn.close()
